package com.shp.config;

import java.io.FileWriter;
import java.io.IOException;
import java.util.Properties;

/**
 * Description:
 *
 * @author zwl
 * @version 1.0
 * @date 2020/5/1 20:40
 */
public class AlipayConfig {

    // 初始化配置文件
    static {
        Properties props = new Properties();
        try {
            props.load(AlipayConfig.class.getResourceAsStream("/alipay.properties"));
            app_id = props.getProperty("app_id");
            merchant_private_key = props.getProperty("merchant_private_key");
            alipay_public_key = props.getProperty("alipay_public_key");
            gatewayUrl = props.getProperty("gatewayUrl");
            log_path = props.getProperty("log_path");
            notify_url = props.getProperty("notify_url");
            return_url = props.getProperty("return_url");
            String signType = props.getProperty("sign_type");
            if(signType != null && !"".equals(signType)){
                sign_type = signType;
            }
            String charSet = props.getProperty("charset");
            if(charSet != null && !"".equals(charSet)){
                charset = charSet;
            }
        } catch (IOException e) {
            System.out.println("未找到类路径下的upload.properties文件");
            e.printStackTrace();
        }
    }

    /**
     * 应用ID,您的APPID<br />
     * 收款账号既是您的APPID对应支付宝账号<br />
     */
    public static String app_id;

    /**
     * 商户私钥<br />
     * 您的PKCS8格式RSA2私钥<br />
     */
    public static String merchant_private_key;

    /**
     * 支付宝公钥<br />
     * 查看地址：https://openhome.alipay.com/platform/keyManage.htm 对应APPID下的支付宝公钥。<br />
     */
    public static String alipay_public_key;

    /**
     * 服务器异步通知页面路径<br />
     * 需http://格式的完整路径，不能加?id=123这类自定义参数，必须外网可以正常访问<br />
     */
    public static String notify_url;

    /**
     * 页面跳转同步通知页面路径<br />
     * 需http://格式的完整路径，不能加?id=123这类自定义参数，必须外网可以正常访问<br />
     */
    public static String return_url;

    /**
     * 签名方式<br />
     */
    public static String sign_type = "RSA2";

    /**
     * 字符编码格式<br />
     */
    public static String charset = "utf-8";

    /**
     * 支付宝网关<br />
     * 正式线上网关：https://openapi.alipay.com/gateway.do
     */
    public static String gatewayUrl;

    /**
     * 支付宝网关<br />
     * 日志目录<br />
     */
    public static String log_path;


    /**
     * 写日志，方便测试（看网站需求，也可以改成把记录存入数据库）
     *
     * @param sWord 要写入日志里的文本内容
     */
    public static void logResult(String sWord) {
        FileWriter writer = null;
        try {
            writer = new FileWriter(log_path + "alipay_log_" + System.currentTimeMillis() + ".txt");
            writer.write(sWord);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (writer != null) {
                try {
                    writer.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }

    // public static void main(String[] args) {
    //     FileWriter writer = null;
    //     try {
    //         writer = new FileWriter("C:\\Users\\ZWL\\Desktop\\" + "alipay_log_" + System.currentTimeMillis() + ".txt");
    //         writer.write("123");
    //     } catch (IOException e) {
    //         e.printStackTrace();
    //     }finally {
    //         if (writer != null) {
    //             try {
    //                 writer.close();
    //             } catch (IOException e) {
    //                 e.printStackTrace();
    //             }
    //         }
    //     }
    // }
}
